EF Form Posts afhandelen
Om de klasse PostalCodes, die we eerder gemaakt hebben, te binden geef je een parameter van het type PostalCodes als een van de parameters van de controller actiemethode:
[HttpPost] public ActionResult Insert(Models.PostalCodes postalCodes) { if (ModelState.IsValid) { ViewBag.Message = "Insert een postcode in de database"; db.PostalCodes.Add(postalCodes); db.SaveChanges(); } else { ModelState.AddModelError("Ongeldige gegevens", "Postcode en plaatsnaam moeten ingevuld zijn."); } return View("Selecting", db.PostalCodes); }
Het belangrijkste aspect van het PostalCodes model is het feit dat de namen van de eigenschappen (PostalCode, Location, enz.) overeenkomen met de waarden in de name attributen van de input-elementen. Die namen van de eigenschappen zijn van cruciaal belang, omdat ASP.NET MVC het de eigenschappen van het model probeert te binden met de ingetype waarden op de form op basis van de overeenkomende namen.
Als je de toepassing uitvoert, en op de submit knop van het formulier klikt zal je zien dat het PostalCodes model wordt gevuld met de waarden die je hebt ingevoerd.
Maar we moeten nog meer doen, namelijk het daadwerkelijk opslaan van de data.